import tkinter as tk

# 创建主窗口
root = tk.Tk()
root.title("青城山旅游服务质量调查问卷批量生成工具")

# 设置窗口大小为 500x700 并固定不可改变
root.geometry("500x500")
root.resizable(False, False)


# 清理已有的表单控件
def clear_form():
    for widget in form_frame.winfo_children():
        widget.destroy()


# 生成自定义数据表单的函数
def generate_custom_data():
    clear_form()  # 清空表单区域

    # 动态生成 11 个输入框，每行显示两个输入框
    tk.Label(form_frame, text="请填写以下问题（多选选项用逗号隔开）：").grid(row=0, column=0, columnspan=2, pady=10)
    entries.clear()  # 清空列表
    for i in range(11):
        question_label = tk.Label(form_frame, text=f"第 {i + 1} 题:")
        question_label.grid(row=(i // 2) + 1, column=(i % 2) * 2, padx=5, pady=5, sticky="e")

        entry = tk.Entry(form_frame)
        entry.grid(row=(i // 2) + 1, column=(i % 2) * 2 + 1, padx=5, pady=5, sticky="w")
        entries.append(entry)

    # 添加“执行”按钮
    execute_button = tk.Button(form_frame, text="执行", command=submit_custom_data)
    execute_button.grid(row=7, column=0, columnspan=2, pady=10)


# 提交表单数据的函数
def submit_custom_data():
    # 获取用户填写的 11 条数据
    data = [entry.get() for entry in entries]
    print("用户填写的数据：", data)


# 随机生成数据的函数
def generate_random_data():
    clear_form()  # 清空表单区域
    tk.Label(form_frame, text="正在生成随机数据，请等待执行……").pack(pady=10)
    print("随机生成若干数据按钮被点击")


# 添加执行次数输入框和标签
count_frame = tk.Frame(root)
count_frame.pack(pady=10)

tk.Label(count_frame, text="执行次数：").pack(side="left")
entry_count = tk.Entry(count_frame, width=5)
entry_count.insert(0, "1")  # 默认执行次数为 1
entry_count.pack(side="left")

# 创建按钮框架
button_frame = tk.Frame(root)
button_frame.pack(pady=10)

# 添加“生成自定义若干数据”按钮
custom_button = tk.Button(button_frame, text="生成自定义若干数据", command=generate_custom_data)
custom_button.pack(side="left", padx=5)

# 添加“随机生成若干数据”按钮
random_button = tk.Button(button_frame, text="随机生成若干数据", command=generate_random_data)
random_button.pack(side="left", padx=5)

# 创建用于表单输入的框架
form_frame = tk.Frame(root)
form_frame.pack(pady=20)

# 存储输入框的列表
entries = []

# 运行应用程序
root.mainloop()